﻿// -----------------------------------------------------------------------
// <copyright file="MenuItem.cs" company="">
// TODO: Update copyright text.
// </copyright>
// -----------------------------------------------------------------------

namespace Ex04.Menus.Delegates
{
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

  
    public abstract class MenuItem
    {
        private string m_Title = string.Empty;

        /// <summary>
        /// This method is a constructor, which enables the user to assign a title to the the menu item his currently using. 
        /// </summary>
        /// <param name="i_MenuTitle":> Recieves a "string" parameter as the menu item's title </param>
        public MenuItem(string i_MenuTitle)
        {
            m_Title = i_MenuTitle;
        }

        public abstract void Invoke();

        public virtual void AddMenuItem(MenuItem i_MenuName)
        {
        }

        public string Title
        {
            get
            {
                return this.m_Title;
            }

            set
            {
                this.m_Title = value;
            }
        }
    }
}
